/**
 * 
 */
package it.marco.test.service;

import it.marco.test.dm.Role;
import it.marco.test.dm.User;

import java.io.Serializable;
import java.util.List;

import org.springframework.security.access.prepost.PreAuthorize;


/**
 * @author Mporta
 *
 */
public interface RoleService /*<T, ID extends Serializable> extends BaseService<User, String> */{
	
//	@PreAuthorize("hasPermissions(#user, 'upd')")
//	public void saveOrUpdate(User user);
//	
//	public User find(User user);
	
	//public abstract void setDao(BaseDAO<T, ID> dao);
	
	public List<Role> findAll();
	
	public Role find(Serializable id);
	
	public void save(Role user);
	
	//@PreAuthorize("hasPermission(#entity, 'WRITE')")
	public void saveOrUpdate(Role entity);
	
	public void update(Role entity);
	
	public void delete(Role entity);
	
}
